The inventive concept relates generally to electronic memory technologies. More particularly, certain embodiments of the inventive concept relate to nonvolatile memory devices and methods of performing garbage collection in nonvolatile memory devices.
A nonvolatile memory device is a type of memory device capable of retaining stored data even in the absence of applied power. Examples of nonvolatile memory devices include flash memory, resistive random access memory, and phase change random access memory, to name but a few.
In some nonvolatile memory devices, such as flash memory, data cannot be overwritten in place. In other words, any stored data must first be erased before new data can be written. Unfortunately, this tends to increase the computational cost of data management because, for instance, some un-erased memory locations may be occupied by invalid data. The invalid data is generally erased at some point in order to free up those memory locations. In general, a process for erasing or otherwise handling invalid data is referred to as garbage collection. Because the presence of invalid data can influence memory performance, there is a general need for techniques that can efficiently manage invalid data.